#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "pac_IHM.h"
#include "lc_array.h"
/*
LCarray* stringToArray(char * aLevelList) {

    LCarray * allLevels = lcArrayCreate();


    char levelListWithEnd[100];
    strcat(levelListWithEnd, aLevelList);
    strcat(levelListWithEnd, "*");

    int currentIndex = 0;
    char currentChar = levelListWithEnd[currentIndex];
    printf("'%s'\n",aLevelList); 
    printf("'%s'\n",levelListWithEnd); 
    
 // Tant que la chaine n'est pas terminée
    while (currentChar != '*') {
        char currentLevel[256];
        printf("-> '");
        
        // Parcours du mot courant
        while (currentChar != ' ' && currentChar != '\n' && currentChar != '*') {
                strcat(currentLevel, &levelListWithEnd[currentIndex]);
            printf("%c", currentChar);

            currentIndex++;
            currentChar = levelListWithEnd[currentIndex];
        }
        strcat(currentLevel, "\0");
        printf("' - %c\n", currentChar);
        lcArrayAdd(allLevels, currentLevel);

        // Récupération du prochain caractère si la chaine n'est pas finie
        if (currentChar != '*') {
            currentIndex++;
            currentChar = levelListWithEnd[currentIndex];
        }
    }

    return allLevels;
}
*/

int main(int argc, char** argv) {

    if (argc != 2) {
        printf("Vous devez mettre en paramètre une chaine contenant la liste des fichiers de niveaux!\n");
        printf("        -> La liste doit contenir les chemins d'accès aux fichiers de niveaux.\n");
        printf("        -> (séparés par des espaces ou des passages à la ligne)\n");
        return -1;
    } else {
        
        // Extraction de la liste des fichiers de niveaux présent dans l'argument
        LCarray * levelPathList = fileToArray(argv[1]);
        
        int i;
        for (i = 0; i<lcArrayLength(levelPathList) ; i++){
            char * test = lcArrayGet(levelPathList, i);
            printf("==> %s\n",test);
         }

        // Lancement du jeu avec la liste des fichiers de niveau
        startGAME(argc, argv, levelPathList);
    }

    return 0;
}




